package com.haoma.service;

import com.haoma.elasticsearch.ArticleEs;
import com.haoma.entity.Category;
import com.haoma.vo.ClassifyVo;
import com.haoma.vo.HotArticleVo;
import com.haoma.vo.SearchVo;
import org.springframework.data.domain.Page;

import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
 * Description:
 */

public interface ArticleService {
    ArticleEs getArticleDetail(Long id);

    List<Category> getCategoryList();

    List<HotArticleVo> getHotArticle();

    List<HotArticleVo> getRecommendArticle();

    Page<ArticleEs> articlePage(Integer page, Integer limit);

    List<ClassifyVo> getClassifyList();

    List<HotArticleVo> getEntireList(Integer page, Integer limit, Integer type, String name);

    Map<String, List<Object>> getLabelList();

    Page<ArticleEs> getPigeonholeList(Integer page, Integer limit);

    List<Integer> countPigeonhole();

    Map<String, Object> getCount();

    List<SearchVo> search(String value) throws IOException;
}
